package com.example.demo.demoOne.impl;

import com.example.demo.demoOne.inter.ReturnOneParam;

/*1:有时候我们不是必须要自己重写某个匿名内部类的方法，
我们可以可以利用 lambda 表达式的接口快速指向一个已经被实现的方法
2:语法:方法归属者:: 方法名 静态方法的归属者为类名，普通方法归属者为对象
 */
public class Exe1 {

    public static void main(String[] args) {

        ReturnOneParam oneParam = Exe1::doubleNum;
        System.out.println(oneParam.method(11));

        ReturnOneParam oneParam1 = new Exe1()::addTwo;
        System.out.println(oneParam1.method(11));

    }
    /*
      要求：
       1.参数数量和类型要与接口中定义的一致
       2.返回值类型要与接口中定义中的一致
     */

    public static int doubleNum(int a) {
        return a * 2;
    }

    public int addTwo(int a) {
        return a + 2;
    }

}
